在資安越來越嚴苛的情況下
公司內部通常需要一個版本控制的儲存庫以方便進行存儲觀看程式與版本歷史
這時我最近發現有一個很火的 Git 儲存庫 Gitea
可以非常方便安裝使用
接下來用 做一杯茶的時間
一起安裝 Gitea
吧!
Option 2 - Manual server installation
Ubuntu Server 21.10
sudo apt update && sudo apt upgrade && sudo apt dist-upgrade
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyu
sudo apt-get install --reinstall ca-certificates
sudo docker pull gitea/gitea:latest
sudo mkdir -p /var/lib/gitea
sudo docker run -d --privileged=true --restart=always \
--name=gitea -p 10022:22 -p 10080:3000 \
-v /var/lib/gitea:/data \
-v /etc/localtime:/etc/localtime:ro \
-v /etc/timezone:/etc/timezone:ro \
gitea/gitea:latest
-d(--detach)
:代表執行 container 並印出 container ID--privileged=true
:使用該參數讓 container 內的 root 擁有真正的 root 權限--restart=always
:重啟時將自動重啟容器-p(--publish)
:將容器的指定端口發佈到主機(主機端口:容器端口)-v(--volume)
:使用指定儲存庫(主機目錄:容器目錄)Gitea
http://yourIp:yourPort
/var/lib/gitea/gitea/conf/app.ini
進行重設 sudo apt-get -y install sshpass
-y
:對所有詢問都給予肯定,同時不做任何提示Ubuntu Server 21.10
安裝時已包含 tar、rsync、crontab
故無須再重新安裝 sudo tar zcvf /var/lib/gitea/gitea.tar.gz /var/lib/gitea
sudo tar zxvf /var/lib/gitea/gitea.tar.gz
sshpass -p 'remote_password' \
rsync -azvh /var/lib/gitea/gitea.tar.gz \
user@remoteIp:path
sudo rm -rf /var/lib/gitea/gitea.tar.gz
crontab
進行排程任務備份
string
並加入 port
刷新頁面即可